package com.cn.jinl.dao;

import com.cn.jinl.domain.PlanManage;
import com.cn.jinl.domain.PlanManageExample;
import java.util.List;

import com.cn.jinl.domain.PlanOrder;
import com.cn.jinl.utils.QueryForm;
import org.apache.ibatis.annotations.Param;

public interface PlanManageMapper {
    int countByExample(PlanManageExample example);

    int deleteByExample(PlanManageExample example);

    int insert(PlanManage record);

    int insertSelective(PlanManage record);

    PlanManage selectPlanById(String id);

    PlanManage selectPlanByOrderId(String orderId);

    List<PlanManage> selectByExample(PlanManageExample example);

    List<PlanManage> selectPlanManageList(QueryForm queryForm);
    List<PlanManage> selectPlanManageList1(QueryForm queryForm);

    List<PlanOrder> selectPlanOrderByPlanId(String planId);
    List<PlanManage> selectAllPlanManageList(QueryForm queryForm);

    int selectPlanManageListCount(QueryForm queryForm);

    int updateByExampleSelective(@Param("record") PlanManage record, @Param("example") PlanManageExample example);

    int updateByExample(@Param("record") PlanManage record, @Param("example") PlanManageExample example);

    int selectExistPlanOrderCount(@Param("ids") List<String> ids);

    List<String> selectOrderIdsByPlanIds(@Param("ids") List<String> ids);

    int batchInsertPlanManages(@Param("itemList") List<PlanManage> planManages);

    int batchInsertPlanOrders(@Param("itemList") List<PlanOrder> planOrders);

    int updatePlanCompleteNum(PlanManage planManage);
}